1. Field of the Invention
This invention generally relates to a television system and more particularly to a motion compensated prediction interframe coding system for performing motion compensated prediction interframe coding of television signals.
2. Description of The Related Art
Recently, with advance in techniques of moving picture coding, a motion compensated prediction interframe coding system has been developed as an efficient coding system for effecting an efficient coding of a color moving picture for use in a visual telephone (or video telephone), a video conference system, CD-ROM, a digital video tape recorder (VTR) and so on. An example of a motion compensated prediction interframe coding system is described in T. Fukinuki: Multidimensional Signal Processing of TV Picture, Nikkan Kogyo Shinbun Company, Chapter 7 "Efficient Coding", pp. 213-291 (1988. 11. 15).
The motion compensated prediction interframe coding system can achieve high efficiency of coding, while it has the following drawback. Namely, when a large quantity of prediction error signals is generated, the motion compensated prediction interframe coding system limits an amount of codes of the generated prediction error signals by making quantization characteristics coarse (i.e., employing a large step size for quantization) in such a way that at the coding of a picture can be achieved a constant frame rate. In case of making quantization characteristics coarse, quantization noises appear in a reproduced picture. The quantization noise is referred to as a block distortion or a mosquito noise and is a factor of degradation of picture quality.
As a system for decreasing the degradation of picture quality, has been proposed a system which performs intra-loop filtering processing, which is two-dimensional lowpass filtering processing, on a motion compensation signal obtained by effecting motion compensation processing on a television signal and computing a prediction signal. In this system, the motion compensation processing results in not only reduction of prediction error signals but decrease in correlation between pixels. Thus, an orthogonal transform (or transformation) of the prediction signals is not effective. Therefore, an additional intra-loop filter is inserted into the system with the intention of recovering the correlation between pixels to obtain the desired effects of the orthogonal transform and to reduce the degradation of picture quality. As an example of such a conventional system, a motion compensated prediction interframe coding system provided with an intra-loop filter (hereunder referred to simply as a prior art system) is disclosed in K. Matsuda et al: "A study of a coding intra-loop filter in a motion compensated cosine transform coding system, Denshi-joho-tsushin gakkai ronbun-shi (in Japanese), Vol. J-71A, No. 2, pp. 488-496 (1988. 2).
Hereinafter, a prior art motion compensated prediction interframe coding system will be described by referring to FIG. 3.
In this figure, reference numeral 41 represents an input terminal from which television signals are inputted to the system; 43 a motion vector calculating portion for comparing a picture signal of a block (hereunder referred to as a coding block), which is to be coded, of a current frame with a reproduced picture signal of a previous frame and calculating a motion vector; 44 a picture memory portion for storing reproduced picture signals of a current and previous frames; 48 a motion compensation predicting portion for performing motion compensation predicting of the reproduced picture signals of the previous frame; 50 an intra-loop filter portion for performing two-dimensional lowpass filtering processing of a motion compensation signal; 52 a prediction error evaluating portion for evaluating a prediction error by computing the difference between an original picture signal and a prediction signal of a coding block; 54 an orthogonal transform portion for performing an orthogonal transform of the selected signal; 56 a quantization portion for quantizing coefficients of an orthogonal transform of the selected signal; 59 an inverse orthogonal transform portion for effecting an inverse orthogonal transform of the quantized coefficients of the orthogonal transform; 61 a reproduced picture calculating portion for calculating a reproduced picture of a current frame; 63 a prediction error coding portion for performing what is called "transmitting channel coding" of a prediction error; 65 a motion vector coding portion for performing the transmitting channel coding portion of a motion vector; 67 a multiplexer portion for computing a transmitting frame on the basis of the prediction code and the motion vector; 69 a code memory portion for temporarily storing a transmitting frame; and 71 an output terminal from which a transmission signal is output.
Hereinafter, an operation of the prior art motion compensated prediction interframe coding system having the above described arrangement will be described.
First, television signals are converted into digital television signals by an analog-to-digital (A/D) conversion circuit (not shown). Then, pixels represented by the digital television signals are divided into blocks each of which is a rectangular array composed of M.times.N pixels arranged in M rows and N columns. Further, the digital television signals are input to the system from the input terminal 41 as input television signals 42. Then, the motion vector calculating portion 43 compares the input television signal with a reproduced picture signal 45 of a previous frame stored in the picture memory portion 44 and calculating the motion of a coding block as a motion vector and moreover outputs a motion vector signal 46 representing the motion vector. Simultaneously, the motion vector calculating portion 43 judges from the result of the evaluation of the motion vector whether the motion compensation made with respect to the coding block is effective or ineffective. Further, the motion vector calculating portion 43 outputs a motion compensation control signal representing the result of the judgement as the motion vector signal 46. That is, the motion vector signal 46 and the motion compensation control signal are superposed. Next, the motion compensation portion 48 performs the motion compensation of the reproduced television signal 45 of the previous frame by using the motion vector in case where the motion compensation control signal indicates that the motion compensation is effective. In contrast, in case where the motion compensation control signal indicates that the motion compensation is ineffective, the motion compensation portion 48 outputs the reproduced television signal 45 without change as a motion compensation signal 49. Subsequently, the intra-loop filtering portion 50 judges whether filtering processing of the coding block, of which the motion compensation has been effected by using the motion vector, is to be effected in the following way (FILTER ON) or not to be effected (FILTER OFF). Hereunder, this will be referred to as "intra-loop filter control". That is, the intra-loop filtering portion 50 performs the two-dimensional lowpass filtering processing (as shown in FIG. 4) of the motion compensation signal 49 in case where it is judged that the filtering processing of the coding block should be effected (i.e., in case of "FILTER ON"). In contrast, in case where it is judged that the filtering processing of the coding block should not be effected (i.e., in case of "FILTER OFF"), the intra-loop filtering portion 50 outputs the motion compensation signal 49 without change as a prediction signal 51. FIG. 4 is a diagram for illustrating an example of the two-dimensional filtering processing of a block which is an array of 8.times.8 pixels (i.e., M=N=8) and is indicated by solid lines therein. Further, numerals 1 and 4 corresponding to pixels denote weighting factors. In this case, the gray level or brightness of a prediction pixel g(i,j) is calculated from the following equation (1) by using that of a motion compensation pixel g(i,j) and those of four horizontal and vertical neighboring pixels or neighbors g(i-1,j), g(i,j+1), g(i,j-1) and g(i+1,j) surrounding the motion compensation pixel: EQU p(i,j)=(1/8)[4g(i,j)+g(i-1,j)+g(i,j+1)+g(i,j-1)+g(i+1,j)] (1)
Incidentally, in case where the motion compensation pixel is on the border of this block (e.g., a pixel positioned at the top left corner of this block as shown in FIG. 4), the filtering processing is performed by finding the gray levels of prediction pixels from the equation (1) using those of pixels of parts (indicated by dashed lines in FIG. 4) of adjacent blocks.
In an "intra-loop filter control" portion of the prior art system, the following judgement is performed when a coding block is a block (hereunder referred to as a motion compensation block) of the motion compensation is effected. First, let (Vx,Vy) denote a motion vector of the coding block. Further, a "motion amount" V is defined by EQU V=.vertline.Vx.vertline.+.vertline.Vy.vertline. (2)
Moreover, the intra-loop filtering processing is performed for a block, for which the following equation (3) with respect to the motion amount V and a predetermined threshold Vth holds, is effected (FILTER ON). EQU V.gtoreq.Vth (3)
Thus, if Vth=0, the intra-loop filtering processing is performed for all blocks. In contrast, if Vth=.infin., it follows that the intra-loop filtering processing is not performed. In the prior art system, in case where Vth=1, there is generated the least amount of codes, and picture quality becomes good. This means that picture quality is improved if the intra-loop filtering processing is performed for a moving block which can move over a predetermined sphere of movement (i.e., V.gtoreq.1) and that it had better not perform the intra-loop filtering processing for a stationary block (i.e., V&lt;1).
The prediction error evaluating portion 52 evaluates the difference between the input television signal and the prediction signal of the coding block and outputs a prediction error signal 53 representing the evaluated difference. Further, the orthogonal transform portion 54 performs the orthogonal transform of the prediction error signal 53 to remove therefrom effects of the high-degree correlation between each pair of the neighbors of a prediction pixel corresponding to the prediction error signal 53 and further outputs orthogonal transform coefficients 55. At that time, a discrete cosine transform (DCT), which has a high efficiency of transform and of which firmware may be realized, is usually employed as the orthogonal transform. The quantization portion 56 is a quantizer of which the quantization characteristics varies depending on the amount of the generated codes. Further, the quantization portion 56 quantizes the prediction error orthogonal transform coefficients 55 and outputs prediction error orthogonal transform quantization coefficients 58. The inverse orthogonal transform portion 59 performs the inverse orthogonal transform of the prediction error orthogonal transform quantization coefficients 58 and outputs a quantization-error-containing prediction error signal 60 representing a prediction error which includes a quantization error. Then, the reproduced picture calculating portion 61 adds the prediction signal 51 and the quantization-error-containing prediction error signal 60 and outputs a reproduced picture signal 62 representing a reproduced picture of the coding block. Further, the picture memory 44 stores the reproduced picture signal 62 of the current frame and outputs the reproduced television signal (hereunder sometimes referred to as the reproduced picture signal) 45 of the previous frame. Moreover, the prediction error coding portion 63 performs the coding of the prediction error orthogonal transform quantization coefficients 58 and outputs a prediction error code 64. Furthermore, the motion vector coding portion 65 performs the coding of the motion vector 46 and calculates a motion vector code 66. Thereafter, the multiplexer portion 67 calculates a transmission frame 68, which has a predetermined format, from the prediction error code 64 and the motion vector code 66. Subsequently, the code memory portion 69 stores the transmission frame 68 once and further outputs the transmission frame 68 from the output terminal 71 in synchronization with a clock signal, which is inputted from an external circuit (not shown), as a transmission code 70.
However, in case of the intra-loop filtering control portion of the prior art system as above constructed, when parallel displacement of an entire screen greater than a predetermined size is caused by panning a television camera, the intra-loop processing of a coding block is performed even if the motion vector of the coding block is identical with some of the motion vectors of blocks adjacent to the coding block. Therefore, the prior art system has a drawback that a prediction error, which occurs in the central portion of the area (i.e., the panned screen) of which the parallel displacement is effected, increases and as a result, the picture quality is degraded.
The present invention is created to obviate the drawback of the prior art system.
It is, accordingly, an object of the present invention to provide a motion compensated prediction interframe coding system which performs an intra-loop filtering control operation by checking whether or not a motion vector of a coding block, for which a motion compensation is effected, is identical with a motion vector of a block, for which a motion compensation is also effected, adjacent to the coding block and further inhibiting the intra-loop filtering processing of the coding block if the coding block is a central block of a picture taken by panning a television camera thereby decreasing the prediction error and improving picture quality.